<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        /* 
        定义一个用来求两个数和的函数
        可以在函数的（）中来指定一个或多个形参（形式参数）
        多个形参之间使用逗号隔开，声明形参就相当于在函数内部声明了对应变量
        但是并不赋值
        */

        function sum(a,b){
            console.log(a+b);
        }
        /* 
            在调用函数时，可以在（）中指定实参（实际参数）
            实参将会赋值给函数中对应的形参
        */
        sum(1,2);
        /* 
            调用函数时，解析器不会检查实参的类型
            所以要注意，是否可能会接收到非法的参数，如果有可能需要对参数进行类型的检查
            函数的实参可以时任意的数据类型
        */
      //sum(true,false);

      /* 
            调用函数时没解析器也不会检查实参的数量
            多余实参不会被赋值
            如果实参的数量少于形参的数量，则没有对应实参的形参则是undefined

      */
     sum(123,111,"hello");
     sum(123);
    </script>
</head>
<body>
    
</body>
</html>